/* Having both STI-blocking and MOV-SS-blocking fails vmentry. */
intr_shadow &= ~VMX_INTR_SHADOW_STI;
intr_shadow |= VMX_INTR_SHADOW_MOV_SS;
+ __vmwrite(GUEST_INTERRUPTIBILITY_INFO, intr_shadow);
}
ctl = CPU_BASED_VIRTUAL_NMI_PENDING;
}
if ( unlikely(idtv_info_field & 0x800) ) /* valid error code */
__vmwrite(VM_ENTRY_EXCEPTION_ERROR_CODE,
__vmread(IDT_VECTORING_ERROR_CODE));
- enable_intr_window(v, intr_source);
/*
* Clear NMI-blocking interruptibility info if an NMI delivery
__vmread(GUEST_INTERRUPTIBILITY_INFO) &
~VMX_INTR_SHADOW_NMI);
+ enable_intr_window(v, intr_source);
+
HVM_DBG_LOG(DBG_LEVEL_1, "idtv_info_field=%x", idtv_info_field);
return;
}